package com.tql.hualala.request;

import java.math.BigDecimal;

/**
 实例数据：
 "action": 0,
 "actionTime": 20240125112613,
 "advanceOrderFlag": 0,
 "alertFlagLst": "",
 "areaName": "外卖",
 "cardKey": "",
 "cardNo": "",
 "cardTransAfterRemark": "",
 "cardTransID": "",
 "channelKey": "200_ele",
 "channelName": "饿了么外卖",
 "channelOrderKey": "7327872076033823038",
 "channelOrderKeyTP": "",
 "channelOrderNo": "",
 "channelOrderTime": "0",
 "channelUserID": "",
 "channelUserImage": "",
 "channelUserKey": "",
 "checkoutBy": "9999|哗啦啦线上",
 "checkoutTime": 20240125112613,
 "createBy": "9999|哗啦啦线上",
 "createTime": 20240125112612,
 "crmChannelID": 0,
 "customerName": "",
 "deviceCode": "88",
 "deviceGroupID": "",
 "deviceGroupName": "",
 "deviceKey": "18-18-18-18-18-18",
 "deviceName": "YST",
 "deviceOrderNo": "13",
 "discountBy": "|",
 "discountRange": 0,
 "discountRate": 1,
 "discountWayKey": "",
 "discountWayName": "",
 "fJZCount": 0,
 "foodAlert": "",
 "foodAmount": 22,
 "foodCount": 2,
 "foodNameDetail": "",
 "groupID": 247692,
 "invoiceAmount": 10,
 "invoiceBy": "",
 "invoiceTaxAmount": 0.0,
 "invoiceTaxRate": 0.0,
 "invoiceTaxpayerIdentCode": "",
 "invoiceTitle": "",
 "isCreatedByLoginUser": 0,
 "isTestOrder": 0,
 "isVipPrice": 0,
 "lockedFlag": "",
 "modifyOrderLog": "",
 "moneyWipeZeroType": 0,
 "netOrderTypeCode": "WS_WM",
 "orderKey": "YST2401251126120ELM003",
 "orderMD5": "",
 "orderNo": "13",
 "orderRemark": "饿了么外卖 NO:3 送达:2024-01-25 11:26:12 马**(男",
 "orderStatus": 40,
 "orderSubType": 20,
 "paidAmount": 12,
 "parentOrderKey": "",
 "payAlert": "",
 "person": 1,
 "posCashierPicID": 0,
 "promotionAmount": 10,
 "promotionDesc": "",
 "reportDate": 20240125,
 "reviewBy": "",
 "reviewTime": 0,
 "sendCouponAmount": 0.0,
 "sendCouponRemark": "",
 "sendFoodAmount": 0,
 "serverMAC": "18-18-18-18-18-18",
 "shiftName": "午餐",
 "shiftTime": "",
 "shopID": 76591422,
 "shopName": "同庆楼(玫瑰庄园店)",
 "specialStatAmount": 0,
 "startTime": 20240125112612,
 "tableName": "ELM",
 "timeNameCheckout": "午餐",
 "timeNameStart": "午餐",
 "uploadTime": 20240125112639,
 "userAddress": "",
 "userMobile": "18430874878_685",
 "userName": "马**",
 "userPayFlag": "",
 "userSex": 2,
 "waiterBy": "9999|哗啦啦线上",
 "yJZCount": 0

 解释数据：
 -master字段说明：
 名称	类型	说明
 组 ID	长	集团 ID
 店 ID	长	店铺 ID
 店铺名称	字符串	店铺名称
 报告日期	长	报表统计日期，门店增加数据清机结转时间设定，该时间为次日小时数（1~12），默认为1，即次日凌晨1点，格式：yyyyMMdd，默认值0
 orderKey（订单键）	字符串	账单Key，对应账单详情接口的saasOrderKey
 订单状态	整数	账单状态 40：已结账 30：已作废
 orderNo（订单号）	字符串	账单流水号，对应账单详情接口的saasOrderNo
 foodAmount	字符串	账单菜品金额（流水金额）=paidAmount+promotionAmount
 促销金额	字符串	账单优惠金额
 paid金额	字符串	账单实收金额=foodAmount-promotionAmount
 locked标志	字符串	单已锁（如果此字段为空，则没有锁定，如果不为空表示帐单为锁定，通常这里是锁定的人员工号和姓名），锁定的账单不能除锁定人外，别人不能进行菜品及结账相关操作。
 timeName开始	字符串	开台时的餐段名称(早餐，午餐，下午茶，晚餐，夜宵)
 timeNameCheckout	字符串	初次结账时的餐段名称(早餐，午餐，下午茶，晚餐，夜宵)
 区域名称	字符串	用餐区域名称
 表名	字符串	桌台名称
 channelKey（通道键）	字符串	格式化后的渠道 Key
 频道名称	字符串	来源渠道名称
 channelOrderNo	字符串	渠道订单号
 channelOrderKey （通道订单键）	字符串	渠道订单 Key
 channel用户ID	字符串	渠道用户 ID
 channelUserKey（通道用户键）	字符串	渠道用户 Key
 channelUserImage	字符串	渠道用户头像
 channelOrderTime	字符串	渠道订单时间，格式：yyyyMMddHHmm，默认值空字符串
 orderSubType	整数	订单类型（0：堂食 20：外卖 21：自提）
 netOrderTypeCode	字符串	账单数据签名字符串订单类型标识 WS_YD：网上预订 WS_SC：网上闪吃 WS_WM：网上外卖 WS_ZT：网上自提 WS_DN：堂食自助
 人	整数	用餐人数量
 创建作者	字符串	开台人员
 服务员By	字符串	桌台服务员
 开始时间	长	开台时间（yyyyMMddHHssnn）
 checkout时间	长	结账时间，格式：yyyyMMddHHmmss，认值0
 checkout作者	字符串	结账人员
 isTestOrder	整数	是否是测试账单 0：不是（默认） 1：是
 食物计数	整数	菜品数量
 发送食物金额	BigDecimal	赠菜金额合计
 sendCouponAmount	BigDecimal	赠券金额
 sendCouponRemark	String	赠券说明
 cardNo	String	会员卡号
 cardKey	String	会员卡 Key
 cardTransID	String	会员卡交易 ID
 customerName	String	会员姓名
 cardTransAfterRemark	String	会员卡交易后的金额信息
 discountBy	String	执行折扣的店员
 discountWayKey	String	折扣方案 Key
 discountWanName	String	折扣方案名
 discountRate	BigDecimal	折扣率
 isVipPrice	String	是否执行会员价 0：非会员价 1：会员价
 moneyWipeZeroType	Integer	抹零规则 0：不抹零 1：四舍五入到角 2：向上抹零到角 3：向下抹零到角 4：四舍五入到元 5：向上抹零到元 6：向下抹零到元
 specialStatAmount	BigDecimal	特别统计分类菜品的折后金额
 promotionDesc	String	优惠描述
 invoiceBy	String	发票的开票店员
 invoiceTitle	String	发票抬头
 invoiceTaxpayerIdentCode	String	纳税人识别号
 invoiceAmount	BigDecimal	开票金额，对应支付科目需要在商户中心设置“参与开票”
 invoiceTaxRate	BigDecimal	税率 通常为 0.03 或者 0.06 或者 0.17
 invoiceTaxAmount	BigDecimal	税额
 userName	String	顾客姓名
 userSex	Integer	性别 0：女士 1：先生 2：未知
 userMobile	String	顾客联系方式
 userAddress	String	用户收货地址
 modifyOrderLog	String	修改订单日志
 YJZCount	Integer	预结账次数
 FJZCount	Integer	反结账次数
 alertFlagLst	String	记录此桌台是否使用押金结账（YJ：桌台使用押金结账）
 foodAlert	String	账单菜品明细警惕，FJZ：反结账 YJZ：预结账 CSD：测试单 TC：退菜 ZC：赠菜 GJ：改价 LSC：有临时菜 LSTC：有临时套餐 ZK：折扣
 foodNameDetail	String	账单对应菜品名称，多个间用空格隔开
 payAlert	String	账单支付明细
 orderRemark	String	账单备注
 deviceCode	String	设备编号
 reviewBy	String	账单审核人
 reviewTime	Long	账单审核时间，格式：yyyyMMddHHmmss，默认值0
 actionTime	Long	记录修改时间，yyyyMMddHHmmss，默认0
 createTime	Long	记录创建时间，格式：yyyyMMddHHmmss，默认值0
 isCreatedByLoginUser	Byte	是否由登录者创建的订单
 deviceGroupID	String	下单设备所属站点分组(档口)ID
 deviceGroupName	String	名称
 channelOrderKeyTP	String	第三方订单号
 chargeBackFlag	Integer	冲销标识. 空值: POS版本不支持此字段. 0: 正常单(默认), 1: 退单, 2: 冲销单, 3: 部分冲销单
 shiftName	String	收银班次
 userPayFlag	String	支付宝user_id 微信openid 微信appid 微信sub_openid 微信sub_appid
 action	Integer	记录状态
 parentOrderKey	String	冲销单、部分冲销单原单号
 advanceOrderFlag	整数	预订单标识（0非预订单，1预订单）
 折扣范围	整数	打折范围 0：部分打折 1：全单打折 2：分类折扣
 折扣方式名称	字符串	账单折扣优惠方案名
 shiftTime 班次	长	班次的交班时间，为0说明该账所在的班次单还未交班
 上传时间	长	同步时间

 */
public class Master {
    private Long groupID;
    private Long shopID;

    private String shopName;

    private String orderNo;

    private String orderKey;

    private Long uploadTime;
    private Long reportDate;

    private Integer orderStatus;
    private BigDecimal foodAmount;

    private BigDecimal paidAmount;

    private BigDecimal promotionAmount;

    private Long checkoutTime;
    private Long createTime;
    private Long actionTime;


    public Long getGroupID() {
        return groupID;
    }

    public void setGroupID(Long groupID) {
        this.groupID = groupID;
    }

    public Long getShopID() {
        return shopID;
    }

    public void setShopID(Long shopID) {
        this.shopID = shopID;
    }

    public String getShopName() {
        return shopName;
    }

    public void setShopName(String shopName) {
        this.shopName = shopName;
    }

    public String getOrderNo() {
        return orderNo;
    }

    public void setOrderNo(String orderNo) {
        this.orderNo = orderNo;
    }

    public String getOrderKey() {
        return orderKey;
    }

    public void setOrderKey(String orderKey) {
        this.orderKey = orderKey;
    }

    public Long getUploadTime() {
        return uploadTime;
    }

    public void setUploadTime(Long uploadTime) {
        this.uploadTime = uploadTime;
    }

    public Long getReportDate() {
        return reportDate;
    }

    public void setReportDate(Long reportDate) {
        this.reportDate = reportDate;
    }

    public Integer getOrderStatus() {
        return orderStatus;
    }

    public void setOrderStatus(Integer orderStatus) {
        this.orderStatus = orderStatus;
    }

    public BigDecimal getFoodAmount() {
        return foodAmount;
    }

    public void setFoodAmount(BigDecimal foodAmount) {
        this.foodAmount = foodAmount;
    }

    public BigDecimal getPaidAmount() {
        return paidAmount;
    }

    public void setPaidAmount(BigDecimal paidAmount) {
        this.paidAmount = paidAmount;
    }

    public BigDecimal getPromotionAmount() {
        return promotionAmount;
    }

    public void setPromotionAmount(BigDecimal promotionAmount) {
        this.promotionAmount = promotionAmount;
    }

    public Long getCheckoutTime() {
        return checkoutTime;
    }

    public void setCheckoutTime(Long checkoutTime) {
        this.checkoutTime = checkoutTime;
    }

    public Long getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Long createTime) {
        this.createTime = createTime;
    }

    public Long getActionTime() {
        return actionTime;
    }

    public void setActionTime(Long actionTime) {
        this.actionTime = actionTime;
    }


    @Override
    public String toString() {
        return "Master{" +
                "groupID=" + groupID +
                ", shopID=" + shopID +
                ", shopName='" + shopName + '\'' +
                ", orderNo='" + orderNo + '\'' +
                ", orderKey='" + orderKey + '\'' +
                ", uploadTime=" + uploadTime +
                ", reportDate=" + reportDate +
                ", orderStatus=" + orderStatus +
                ", foodAmount=" + foodAmount +
                ", paidAmount=" + paidAmount +
                ", promotionAmount=" + promotionAmount +
                ", checkoutTime=" + checkoutTime +
                ", createTime=" + createTime +
                ", actionTime=" + actionTime +
                '}';
    }
}
